package com.springboot.study.tests.designpattern.template;

/**
 * @Author: guodong
 * @Date: 2021/4/26 13:25
 * @Version: 1.0
 * @Description:
 */
public abstract class TemplateMethod {

    /**模板方法：总体算法的骨架，总体不能修改
     * @return
     */
    final public Long typeOperate(){
        //当前系统的时间（毫秒）
        Long currentTime = System.currentTimeMillis();
        // 具体操作留给子类完成
        this.doWork();
        Long endTime = System.currentTimeMillis();
        return endTime - currentTime;
    }

    protected abstract void doWork();

}
